#include <bits/stdc++.h>
using namespace std;
int main() {
// cout<<"GfG!";
int n;
cin>>n;
string light;
cin>>light;
vector<int > v1;
vector<int> v2;
for( int i=0; i<n; i++)
{
int x,y;
cin>>x>>y;
v1.push_back(x);
v2.push_back(y);
}
vector<int> p(n,0);
int count=0;
int count_max=0;
for( int j=0; j<n; j++)
{
if( light[j]=='1') count++;
}
count_max=count;
for( int i=1; i<10000; i++)
{
count=0;
for( int j=0; j<n; j++)
{
if( i%(v2[j]+p[j]*v1[j])==0 )
{
p[j]++;
if( light[j]=='0') light[j]='1';
else light[j]='0';
}
}
for( int j=0; j<n; j++)
{
if( light[j]=='1') count++;
}
count_max=max(count,count_max);
}
cout<<count_max<<endl;
return 0;
}
1035. Uncrossed Lines | 328. Odd Even Linked List |
1219. Path with Maximum Gold | 1268. Search Suggestions System |
841. Keys and Rooms | 152. Maximum Product Subarray |
337. House Robber III | 869. Reordered Power of 2 |
1593C - Save More Mice | 1217. Minimum Cost to Move Chips to The Same Position |
347. Top K Frequent Elements | 1503. Last Moment Before All Ants Fall Out of a Plank |
430. Flatten a Multilevel Doubly Linked List | 1290. Convert Binary Number in a Linked List to Integer |
1525. Number of Good Ways to Split a String | 72. Edit Distance |
563. Binary Tree Tilt | 1306. Jump Game III |
236. Lowest Common Ancestor of a Binary Tree | 790. Domino and Tromino Tiling |
878. Nth Magical Number | 2099. Find Subsequence of Length K With the Largest Sum |
1608A - Find Array | 416. Partition Equal Subset Sum |
1446. Consecutive Characters | 1618A - Polycarp and Sums of Subsequences |
1618B - Missing Bigram | 938. Range Sum of BST |
147. Insertion Sort List | 310. Minimum Height Trees |